package com.lyf.scm.plan.domain.service;


import com.github.pagehelper.PageInfo;
import com.lyf.scm.common.model.ExcelExportDataDTO;
import com.lyf.scm.plan.api.dto.GmvTargetDTO;
import com.lyf.scm.plan.api.dto.GmvTargetInfoDTO;

import java.util.List;

/**
 * description:
 * gmv指标service
 * @author: haodong
 * @data: 2020/7/8 16:34
 */
public interface GmvTargetService {


    /**
     * 按条件查询gmv指标(周)
     * @param gmvTarget
     * @return
     */
    PageInfo<GmvTargetInfoDTO> listBySelective(GmvTargetDTO gmvTarget);

    /**
     * 查询全渠道gmv指标(范围)
     * @param gmvTarget
     * @return
     */
    List<GmvTargetInfoDTO> listAllByCycles(GmvTargetDTO gmvTarget);

    /**
     * 批量新增
     * @param gmvTargetList
     * @return
     */
    Boolean batchSave(List<GmvTargetDTO> gmvTargetList);

    ExcelExportDataDTO exportExcel(GmvTargetDTO gmvTargetDTO, Integer type ) throws Exception;

    /**
     * 更新销售额目标
     * @param gmvTarget
     * @return
     */
    Boolean updateTarget(List<GmvTargetDTO> gmvTarget);

    /**
     * 删除对应标识数据
     *
     * @param opSign
     */
    void delete(String opSign);
}
